﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/TicTacGadget.Web.Services" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/TicTacGadget.Web.Services" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import namespace="http://samples.microsoft.com/silverlight2/duplex" />
  <xs:complexType name="GameMessage">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q1="http://samples.microsoft.com/silverlight2/duplex" base="q1:DuplexMessage">
        <xs:sequence>
          <xs:element minOccurs="0" name="GameId" type="ser:guid" />
          <xs:element minOccurs="0" name="HostedBy" type="ser:guid" />
          <xs:element minOccurs="0" name="Moves" nillable="true" type="tns:ArrayOfMove" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GameMessage" nillable="true" type="tns:GameMessage" />
  <xs:complexType name="ArrayOfMove">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Move" nillable="true" type="tns:Move" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfMove" nillable="true" type="tns:ArrayOfMove" />
  <xs:complexType name="Move">
    <xs:sequence>
      <xs:element minOccurs="0" name="Host" type="ser:guid" />
      <xs:element minOccurs="0" name="Player" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Sequence" type="xs:int" />
      <xs:element minOccurs="0" name="X" type="xs:int" />
      <xs:element minOccurs="0" name="Y" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Move" nillable="true" type="tns:Move" />
  <xs:complexType name="InquiryMessage">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q2="http://samples.microsoft.com/silverlight2/duplex" base="q2:DuplexMessage">
        <xs:sequence>
          <xs:element minOccurs="0" name="RequestedBy" type="ser:guid" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="InquiryMessage" nillable="true" type="tns:InquiryMessage" />
  <xs:complexType name="MoveMessage">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q3="http://samples.microsoft.com/silverlight2/duplex" base="q3:DuplexMessage">
        <xs:sequence>
          <xs:element minOccurs="0" name="GameId" type="ser:guid" />
          <xs:element minOccurs="0" name="Move" nillable="true" type="tns:Move" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="MoveMessage" nillable="true" type="tns:MoveMessage" />
</xs:schema>